ChatTrigger: Completely rework the criteria and parameter systems #122
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This removes the
Parameter
class and replaces it with 3 methods:startsWith
,contains
, andendsWith
. These methods all take in criterias to make the API more understandable to users (in the past, I've noticed a lot of people attempting to dosetContains(msg)
instead ofsetCriteria(msg).setContains()
).setCriteria will work as normal, with a few slight tweaks.
.
or criteria variables will now detect\n
.setContains("<${a}>")
with a string of "<A> B>" will capture "A" in this string, instead of "A> B".A few thoughts:
I'm thinking that the
contains
criteria maybe should be global by default when using string criteriaThere should be some way to do a "contains or" instead of having every contains match. Right now
contains()
has to have all of the containing criterias matchcontainsAll()
,containsAny()
,variants?containsNone()
startsWithout
,endsWithout
?